<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // var abc = "hello 千锋";

  // console.log(window);
  // console.log(window.abc);

  // console.log(abc);

  // function fn(){
  //   window.hahaha = "123abc";
  // }
  // fn();

  // console.log(hahaha);

  // =====

  // 有明确隶属对象的函数，被对象执行，函数内的this表示当前对象
  // var obj = {
  //   name:"obj",
  //   fn:function(){
  //     console.log(this);
  //   }
  // }
  // 明确隶属对象
  // obj.fn();


  // 没有明确隶属对象的函数（全局函数），直接执行，函数内的this表示window
  // function fn(){
  //   console.log(this)
  // }
  // fn()

  // 没有明确隶属对象的函数（回调函数），直接执行，函数内的this表示window
  var obj = {
    name:"obj",
    fn:function( f ){
      f();
    }
  }
  obj.fn( function(){
    console.log(this);
  } );


  
</script>
</html>